home *** CD-ROM | disk | FTP | other *** search
/ Software Vault: The Diamond Collection / The Diamond Collection (Software Vault)(Digital Impact).ISO / cdr37 / jm_mc_10.zip / MSG-CNT.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1995-03-06  |  9KB  |  426 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 3.1O (Encryption type I) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Boolean  BOOLEAN001
  20.     Integer  INTEGER001
  21.     Integer  INTEGER002
  22.     Integer  INTEGER003
  23.     Integer  INTEGER005
  24.     Real     REAL001
  25.     Real     REAL002
  26.     Real     REAL003
  27.     Real     REAL004
  28.     String   STRING001
  29.     String   STRING002
  30.     String   STRING003
  31.     String   STRING004
  32.     String   STRING005
  33.     String   STRING006
  34.     String   STRING007
  35.     String   STRING008
  36.     String   STRING009
  37.     String   STRING010
  38.     String   STRING011
  39.     String   STRING012
  40.     String   STRING013
  41.     String   STRING014
  42.     String   STRING015
  43.     String   STRING016
  44.     String   STRING018
  45.     String   STRING019
  46.     Declare  Function FUNCTION001(Integer INTEGER004) Integer
  47.     Declare  Function FUNCTION002(String STRING017) String
  48.     Declare  Procedure PROC001()
  49.     Declare  Procedure PROC002()
  50.     Declare  Procedure PROC004(Integer INTEGER006)
  51.     Declare  Procedure PROC006()
  52.     Declare  Procedure PROC007()
  53.     Declare  Procedure PROC008()
  54.  
  55. ;------------------------------------------------------------------------------
  56.  
  57.     PROC001()
  58.     PROC008()
  59.     PROC002()
  60.     PROC006()
  61.     PROC007()
  62.     End
  63.  
  64. ;------------------------------------------------------------------------------
  65.  
  66.     Procedure PROC007()
  67.  
  68.     FCreate 1, STRING013, 1, 0
  69.     If (Exist(PPEPath() + "DISPLAY" + LangExt())) Then
  70.         FOpen 2, PPEPath() + "DISPLAY" + LangExt(), 0, 2
  71.     Else
  72.         FOpen 2, PPEPath() + "DISPLAY", 0, 2
  73.     Endif
  74.     If (Upper(STRING015) == NoChar()) Goto LABEL001
  75.     FPutLn 1, STRING004 + "┌──────────────────────────────────────────────────────────────" + STRING014 + "┐@X07"
  76.     FPutLn 1, STRING004 + "│" + STRING003 + " Message Counter" + STRING009 + " v" + STRING002 + ", (C)opyright 1995, Cutting Edge Online@POS:64@" + STRING014 + "│@X07"
  77.     FPutLn 1, STRING004 + "└" + STRING014 + "──────────────────────────────────────────────────────────────┘@X07"
  78.     :LABEL001
  79.     If (Ferr(2)) Goto LABEL002
  80.     FGet 2, STRING010
  81.     STRING010 = ReplaceStr(STRING010, "@CONF@", FUNCTION002(String(HiConfNum())))
  82.     STRING010 = ReplaceStr(STRING010, "@INUSE@", FUNCTION002(String(REAL002)))
  83.     STRING010 = ReplaceStr(STRING010, "@ACTIVE@", FUNCTION002(String(REAL001)))
  84.     STRING010 = ReplaceStr(STRING010, "@DATE@", Date())
  85.     STRING010 = ReplaceStr(STRING010, "@TIME@", Time())
  86.     STRING010 = ReplaceStr(STRING010, "@CONFAVG@", String(REAL003))
  87.     FPutLn 1, STRING010
  88.     Goto LABEL001
  89.     :LABEL002
  90.     FCloseAll
  91.  
  92.     EndProc
  93.  
  94.  
  95. ;------------------------------------------------------------------------------
  96.  
  97.     Function FUNCTION002(String STRING017) String
  98.  
  99.     Select Case (Len(STRING017))
  100.         Case 1
  101.             FUNCTION002 = STRING017
  102.         Case 2
  103.             FUNCTION002 = STRING017
  104.         Case 3
  105.             FUNCTION002 = STRING017
  106.         Case 4
  107.             FUNCTION002 = Mid(STRING017, 1, 1) + "," + Mid(STRING017, 2, 3)
  108.         Case 5
  109.             FUNCTION002 = Mid(STRING017, 1, 2) + "," + Mid(STRING017, 3, 3)
  110.         Case 6
  111.             FUNCTION002 = Mid(STRING017, 1, 3) + "," + Mid(STRING017, 4, 3)
  112.         Case 7
  113.             FUNCTION002 = Mid(STRING017, 1, 1) + "," + Mid(STRING017, 2, 3) + "," + Mid(STRING017, 5, 3)
  114.         Case 8
  115.             FUNCTION002 = Mid(STRING017, 1, 2) + "," + Mid(STRING017, 3, 3) + "," + Mid(STRING017, 6, 3)
  116.         Case 9
  117.             FUNCTION002 = Mid(STRING017, 1, 3) + "," + Mid(STRING017, 4, 3) + "," + Mid(STRING017, 7, 3)
  118.         Case 10
  119.             FUNCTION002 = Mid(STRING017, 1, 1) + "," + Mid(STRING017, 2, 3) + "," + Mid(STRING017, 5, 3) + "," + Mid(STRING017, 8, 3)
  120.         Case 11
  121.             FUNCTION002 = Mid(STRING017, 1, 2) + "," + Mid(STRING017, 3, 3) + "," + Mid(STRING017, 6, 3) + "," + Mid(STRING017, 9, 3)
  122.         Case 12
  123.             FUNCTION002 = Mid(STRING017, 1, 3) + "," + Mid(STRING017, 4, 3) + "," + Mid(STRING017, 7, 3) + "," + Mid(STRING017, 10, 3)
  124.         Case 13
  125.             FUNCTION002 = Mid(STRING017, 1, 1) + "," + Mid(STRING017, 2, 3) + "," + Mid(STRING017, 5, 3) + "," + Mid(STRING017, 8, 3) + "," + Mid(STRING017, 11, 3)
  126.         Case 14
  127.             FUNCTION002 = Mid(STRING017, 1, 2) + "," + Mid(STRING017, 3, 3) + "," + Mid(STRING017, 6, 3) + "," + Mid(STRING017, 9, 3) + "," + Mid(STRING017, 12, 3)
  128.         Case 15
  129.             FUNCTION002 = Mid(STRING017, 1, 3) + "," + Mid(STRING017, 4, 3) + "," + Mid(STRING017, 7, 3) + "," + Mid(STRING017, 10, 3) + "," + Mid(STRING017, 13, 3)
  130.         Case 16
  131.             FUNCTION002 = Mid(STRING017, 1, 1) + "," + Mid(STRING017, 2, 3) + "," + Mid(STRING017, 5, 3) + "," + Mid(STRING017, 8, 3) + "," + Mid(STRING017, 11, 3) + "," + Mid(STRING017, 14, 3)
  132.         Case 17
  133.             FUNCTION002 = Mid(STRING017, 1, 2) + "," + Mid(STRING017, 3, 3) + "," + Mid(STRING017, 6, 3) + "," + Mid(STRING017, 9, 3) + "," + Mid(STRING017, 12, 3) + "," + Mid(STRING017, 15, 3)
  134.         Case 18
  135.             FUNCTION002 = Mid(STRING017, 1, 3) + "," + Mid(STRING017, 4, 3) + "," + Mid(STRING017, 7, 3) + "," + Mid(STRING017, 10, 3) + "," + Mid(STRING017, 13, 3) + "," + Mid(STRING017, 16, 3)
  136.         Case 19
  137.             FUNCTION002 = Mid(STRING017, 1, 1) + "," + Mid(STRING017, 2, 3) + "," + Mid(STRING017, 5, 3) + "," + Mid(STRING017, 8, 3) + "," + Mid(STRING017, 11, 3) + "," + Mid(STRING017, 14, 3) + "," + Mid(STRING017, 17, 3)
  138.         Case 20
  139.             FUNCTION002 = Mid(STRING017, 1, 2) + "," + Mid(STRING017, 3, 3) + "," + Mid(STRING017, 6, 3) + "," + Mid(STRING017, 9, 3) + "," + Mid(STRING017, 12, 3) + "," + Mid(STRING017, 15, 3) + "," + Mid(STRING017, 18, 3)
  140.         Case 21
  141.             FUNCTION002 = Mid(STRING017, 1, 3) + "," + Mid(STRING017, 4, 3) + "," + Mid(STRING017, 7, 3) + "," + Mid(STRING017, 10, 3) + "," + Mid(STRING017, 13, 3) + "," + Mid(STRING017, 16, 3) + "," + Mid(STRING017, 19, 3)
  142.         Case 22
  143.             FUNCTION002 = Mid(STRING017, 1, 1) + "," + Mid(STRING017, 2, 3) + "," + Mid(STRING017, 5, 3) + "," + Mid(STRING017, 8, 3) + "," + Mid(STRING017, 11, 3) + "," + Mid(STRING017, 14, 3) + "," + Mid(STRING017, 17, 3) + "," + Mid(STRING017, 20, 3)
  144.         Case 23
  145.             FUNCTION002 = Mid(STRING017, 1, 2) + "," + Mid(STRING017, 3, 3) + "," + Mid(STRING017, 6, 3) + "," + Mid(STRING017, 9, 3) + "," + Mid(STRING017, 12, 3) + "," + Mid(STRING017, 15, 3) + "," + Mid(STRING017, 18, 3) + "," + Mid(STRING017, 21, 3)
  146.         Case 24
  147.             FUNCTION002 = Mid(STRING017, 1, 3) + "," + Mid(STRING017, 4, 3) + "," + Mid(STRING017, 7, 3) + "," + Mid(STRING017, 10, 3) + "," + Mid(STRING017, 13, 3) + "," + Mid(STRING017, 16, 3) + "," + Mid(STRING017, 19, 3) + "," + Mid(STRING017, 22, 3)
  148.         Case 25
  149.             FUNCTION002 = Mid(STRING017, 1, 1) + "," + Mid(STRING017, 2, 3) + "," + Mid(STRING017, 5, 3) + "," + Mid(STRING017, 8, 3) + "," + Mid(STRING017, 11, 3) + "," + Mid(STRING017, 14, 3) + "," + Mid(STRING017, 17, 3) + "," + Mid(STRING017, 20, 3) + "," + Mid(STRING017, 23, 3)
  150.         Case 26
  151.             FUNCTION002 = Mid(STRING017, 1, 2) + "," + Mid(STRING017, 3, 3) + "," + Mid(STRING017, 6, 3) + "," + Mid(STRING017, 9, 3) + "," + Mid(STRING017, 12, 3) + "," + Mid(STRING017, 15, 3) + "," + Mid(STRING017, 18, 3) + "," + Mid(STRING017, 21, 3) + "," + Mid(STRING017, 24, 3)
  152.         Case 27
  153.             FUNCTION002 = Mid(STRING017, 1, 3) + "," + Mid(STRING017, 4, 3) + "," + Mid(STRING017, 7, 3) + "," + Mid(STRING017, 10, 3) + "," + Mid(STRING017, 13, 3) + "," + Mid(STRING017, 16, 3) + "," + Mid(STRING017, 19, 3) + "," + Mid(STRING017, 22, 3) + "," + Mid(STRING017, 25, 3)
  154.         Case 28
  155.             FUNCTION002 = Mid(STRING017, 1, 1) + "," + Mid(STRING017, 2, 3) + "," + Mid(STRING017, 5, 3) + "," + Mid(STRING017, 8, 3) + "," + Mid(STRING017, 11, 3) + "," + Mid(STRING017, 14, 3) + "," + Mid(STRING017, 17, 3) + "," + Mid(STRING017, 20, 3) + "," + Mid(STRING017, 23, 3) + Mid(STRING017, 26, 3)
  156.         Case 29
  157.             FUNCTION002 = Mid(STRING017, 1, 2) + "," + Mid(STRING017, 3, 3) + "," + Mid(STRING017, 6, 3) + "," + Mid(STRING017, 9, 3) + "," + Mid(STRING017, 12, 3) + "," + Mid(STRING017, 15, 3) + "," + Mid(STRING017, 18, 3) + "," + Mid(STRING017, 21, 3) + "," + Mid(STRING017, 24, 3) + Mid(STRING017, 27, 3)
  158.         Case 30
  159.             FUNCTION002 = Mid(STRING017, 1, 3) + "," + Mid(STRING017, 4, 3) + "," + Mid(STRING017, 7, 3) + "," + Mid(STRING017, 10, 3) + "," + Mid(STRING017, 13, 3) + "," + Mid(STRING017, 16, 3) + "," + Mid(STRING017, 19, 3) + "," + Mid(STRING017, 22, 3) + "," + Mid(STRING017, 25, 3) + Mid(STRING017, 28, 3)
  160.         Case Else
  161.             FUNCTION002 = STRING017
  162.     End Select
  163.  
  164.     EndFunc
  165.  
  166.  
  167. ;------------------------------------------------------------------------------
  168.  
  169.     Procedure PROC001()
  170.  
  171.     STRING016 = GetToken()
  172.     If (STRING016 == "") Then
  173.         REAL004 = HiConfNum()
  174.     Else
  175.         REAL004 = STRING016
  176.     Endif
  177.     Cls
  178.     REAL001 = 0
  179.     REAL002 = 0
  180.     Print "@POFF@"
  181.     STRING001 = "Message Counter"
  182.     STRING002 = "1.2"
  183.     STRING005 = YesChar()
  184.     STRING006 = NoChar()
  185.     STRING015 = 1
  186.     STRING003 = "@X1F"
  187.     STRING009 = "@X1E"
  188.     STRING004 = "@X19"
  189.     STRING014 = "@X10"
  190.     STRING012 = "@X07"
  191.     If (Exist(PPEPath() + PPEName() + ".CNF")) Then
  192.         STRING007 = ReadLine(PPEPath() + PPEName() + ".CNF", 1)
  193.         If (Exist(STRING007)) Goto LABEL003
  194.         End
  195.         :LABEL003
  196.         STRING008 = ReadLine(PPEPath() + PPEName() + ".CNF", 2)
  197.         If (Exist(STRING008)) Goto LABEL004
  198.         End
  199.         :LABEL004
  200.         STRING013 = ReadLine(PPEPath() + PPEName() + ".CNF", 3)
  201.         STRING003 = ReadLine(PPEPath() + PPEName() + ".CNF", 4)
  202.         STRING009 = ReadLine(PPEPath() + PPEName() + ".CNF", 5)
  203.         STRING004 = ReadLine(PPEPath() + PPEName() + ".CNF", 6)
  204.         STRING014 = ReadLine(PPEPath() + PPEName() + ".CNF", 7)
  205.         STRING015 = ReadLine(PPEPath() + PPEName() + ".CNF", 8)
  206.     Else
  207.         End
  208.     Endif
  209.     INTEGER001 = CurConf()
  210.  
  211.     EndProc
  212.  
  213.  
  214. ;------------------------------------------------------------------------------
  215.  
  216.     Procedure PROC006()
  217.  
  218.     LastIn INTEGER001
  219.  
  220.     EndProc
  221.  
  222.  
  223. ;------------------------------------------------------------------------------
  224.  
  225.     Procedure PROC002()
  226.  
  227.     Integer  INTEGER002
  228.     Integer  INTEGER003
  229.  
  230.     GetUser
  231.     INTEGER003 = 0
  232.     FOpen 1, STRING007, 0, 0
  233.     FSeek 1, 2, 0
  234.     For INTEGER002 = 0 To HiConfNum()
  235.         AnsiPos 36, 8
  236.         PrintLn "@X0F" + FUNCTION002(String(INTEGER002)) + "@X07"
  237.         INTEGER003 = INTEGER003 + FUNCTION001(INTEGER002)
  238.         If (Abort()) Then
  239.             FClose 1
  240.             PROC006()
  241.             INTEGER002 = HiConfNum()
  242.             Continue
  243.         Endif
  244.         If (IsNonStop()) Continue
  245.         INTEGER003 = 0
  246.     Next
  247.     FClose 1
  248.  
  249.     EndProc
  250.  
  251.  
  252. ;------------------------------------------------------------------------------
  253.  
  254.     Procedure PROC008()
  255.  
  256.     AnsiPos 1, 1
  257.     PrintLn "@X0F " + STRING001 + "@X0E v" + STRING002 + "@X07"
  258.     AnsiPos 1, 2
  259.     PrintLn "@X09─────────────────────────────────────────────────────@X07"
  260.     AnsiPos 1, 4
  261.     PrintLn "@X0E                Conference Number: @X07"
  262.     AnsiPos 1, 5
  263.     PrintLn "@X0E                  Conference Name: @X07"
  264.     AnsiPos 1, 7
  265.     PrintLn "@X0E    Conferences on System (Total): @X0F" + FUNCTION002(String(HiConfNum())) + "@X07"
  266.     AnsiPos 1, 8
  267.     PrintLn "@X0E               Current Conference: @X07"
  268.     AnsiPos 1, 9
  269.     PrintLn "@X0E   Conferences on System (In-Use): @X07"
  270.     AnsiPos 1, 11
  271.     PrintLn "@X0E   Total System Messages (Active): @X07"
  272.     AnsiPos 1, 12
  273.     PrintLn "@X0EMessages Per Conference (Average): @X07"
  274.  
  275.     EndProc
  276.  
  277.  
  278. ;------------------------------------------------------------------------------
  279.  
  280.     Function FUNCTION001(Integer INTEGER004) Integer
  281.  
  282.     Boolean  BOOLEAN001
  283.     String   STRING019
  284.     Integer  INTEGER006
  285.  
  286.     FRead 1, STRING019, 14
  287.     If (Strip(STRING019, " ") <> "") Then
  288.         FRead 1, BOOLEAN001, 1
  289.         If (BOOLEAN001 == 1) Then
  290.             If (U_Sec >= S2I(ReadLine(STRING008, (INTEGER004 + 1) * 33 - 10), 10)) Then
  291.                 PROC004(INTEGER004)
  292.                 FUNCTION001 = 1
  293.             Else
  294.                 FUNCTION001 = 0
  295.             Endif
  296.         ElseIf (ConfSel(INTEGER004) || ConfReg(INTEGER004)) Then
  297.             PROC004(INTEGER004)
  298.             FUNCTION001 = 1
  299.         Else
  300.             FUNCTION001 = 0
  301.         Endif
  302.         FSeek 1, 533, 1
  303.     Else
  304.         FSeek 1, 534, 1
  305.         FUNCTION001 = 0
  306.     Endif
  307.  
  308.     EndFunc
  309.  
  310.  
  311. ;------------------------------------------------------------------------------
  312.  
  313.     Procedure PROC004(Integer INTEGER006)
  314.  
  315.     LastIn INTEGER006
  316.     STRING011 = ReadLine(STRING008, (INTEGER006 + 1) * 33 - 32)
  317.     REAL001 = REAL001 + ActMsgNum()
  318.     If (STRING011 <> "") Inc REAL002
  319.     AnsiPos 36, 4
  320.     PrintLn "@X0F" + FUNCTION002(String(INTEGER006)) + "@X07"
  321.     AnsiPos 36, 5
  322.     PrintLn "@X0F" + Left(STRING011, 40) + "@X07"
  323.     AnsiPos 36, 9
  324.     PrintLn "@X0F" + FUNCTION002(String(REAL002)) + "@X07"
  325.     AnsiPos 36, 11
  326.     PrintLn "@X0F" + FUNCTION002(String(REAL001)) + "@X07"
  327.     REAL003 = REAL001 / REAL002
  328.     If (REAL003 <= 999) Then
  329.         AnsiPos 36, 12
  330.         PrintLn "@X0F" + String(REAL003) + "@X07"
  331.     Else
  332.         AnsiPos 36, 12
  333.         PrintLn "@X0F" + FUNCTION002(String(REAL003)) + "@X07"
  334.     Endif
  335.     LastIn INTEGER001
  336.  
  337.     EndProc
  338.  
  339.  
  340. ;------------------------------------------------------------------------------
  341. ;
  342. ; Usage report (before postprocessing)
  343. ;
  344. ; ■ Statements used :
  345. ;
  346. ;    4       End
  347. ;    1       Cls
  348. ;    87      Goto 
  349. ;    75      Let 
  350. ;    1       Print 
  351. ;    16      PrintLn 
  352. ;    46      If 
  353. ;    1       FCreate 
  354. ;    3       FOpen 
  355. ;    2       FClose 
  356. ;    1       FGet 
  357. ;    4       FPutLn 
  358. ;    1       GetUser
  359. ;    1       Inc 
  360. ;    16      AnsiPos 
  361. ;    3       FSeek 
  362. ;    2       FRead 
  363. ;    3       LastIn 
  364. ;    1       FCloseAll
  365. ;    6       EndProc
  366. ;    2       EndFunc
  367. ;
  368. ;
  369. ; ■ Functions used :
  370. ;
  371. ;    2       *
  372. ;    1       /
  373. ;    330     +
  374. ;    2       -
  375. ;    33      ==
  376. ;    2       <>
  377. ;    1       <
  378. ;    2       <=
  379. ;    3       >=
  380. ;    45      !
  381. ;    2       &&
  382. ;    2       ||
  383. ;    30      Len(
  384. ;    1       Upper()
  385. ;    162     Mid()
  386. ;    1       Left()
  387. ;    1       Ferr()
  388. ;    1       Abort()
  389. ;    1       Date()
  390. ;    1       Time()
  391. ;    2       NoChar()
  392. ;    1       YesChar()
  393. ;    1       Strip()
  394. ;    11      String()
  395. ;    1       CurConf()
  396. ;    12      PPEPath()
  397. ;    10      ReadLine()
  398. ;    1       GetToken()
  399. ;    4       Exist()
  400. ;    1       S2I()
  401. ;    2       LangExt()
  402. ;    9       PPEName()
  403. ;    6       ReplaceStr()
  404. ;    1       ConfReg()
  405. ;    1       ConfSel()
  406. ;    1       IsNonStop()
  407. ;    6       HiConfNum()
  408. ;    1       ActMsgNum()
  409. ;
  410. ;------------------------------------------------------------------------------
  411. ;
  412. ; Analysis flags : No flag
  413. ;
  414. ;------------------------------------------------------------------------------
  415. ;
  416. ; Postprocessing report
  417. ;
  418. ;    1       For/Next
  419. ;    0       While/EndWhile
  420. ;    9       If/Then or If/Then/Else
  421. ;    1       Select Case
  422. ;
  423. ;------------------------------------------------------------------------------
  424. ;                 AEGiS Corp - Break the routines, code against the machines!
  425. ;------------------------------------------------------------------------------
  426.